% Usage: % \fancyframebox {rule thickness {separation from inner guy {inner guy
\setbox0=\hbox{\it the center \count11=1 \loop\ifnum\count11<36 \setbox0=\hbox{\fancyframebox{.1pt{5pt{\unhbox0 \advance\count11 by1 \repeat
\vbox to 0pt{\centerline{\box0\vss
This paragraph is probably rather hard to read. I have used \TeX’s rule-drawing and macro capability to set 35 boxes on top of the text. This was rather easy to do in \TeX. I challenge anyone to come up with as simple a method for {\it troff.
\def\\{\char‘\\\def\{{\char‘\{\def\{\char‘\ The command I used was:
$$\hbox{\tt \\fancyframebox\{.1pt\\{5pt\\{{\it text to be boxed\$$
{\tt \\fancyframebox makes a framed {\tt \\hbox containing its third argument, surrounded by extra space (its second argument), and rules on all four sides whose width is its first argument. To get 35 boxes, you just re-frame 35 times. I used a {\tt \\loop construct, but one could just write out 35 nested {\tt \\fancyframebox calls.
In order to center the fancy boxes, I put them into {\tt \\box0 and used {\tt \\centerline\{\\box0\ to write it out. To make the text come out on top, I put it in a {\tt \\vbox to 0pt construct, making \TeX\ try to squeeze everything vertically to zero. A {\tt \\vss allowed the {\tt \\vbox to shrink (without it \TeX \ would still have done the job, but would have complained about an “overfull {\tt \\vbox”).
Thus, the final set of commands, including the \TeX\ loop instructions, to typeset the boxes was
\bigskip
{\tt\parindent=2\parindent\obeylines \\setbox0=\\hbox\{\\it the center\ \\count11=1 \\loop\\ifnum\\count11<36 \quad\\setbox0=\\hbox\{\\fancyframebox\{.1pt\\{5pt\\{\\unhbox0\\ \quad\\advance\\count11 by1 \\repeat
\\vbox to 0pt\{\\centerline\{\\box0\\\vss\
\bigskip
Simple—at least when you consider the task\dots.
\bye
This document was generated on November 24, 2024 using texi2html 5.0.